/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Media Upload
媒体上传相关接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#ifndef VodApiModel_h
#define VodApiModel_h
#import <JDCloudOCSDKCore/JDCloudOCSDKCore.h>
#import <JDCloudOCSDKVod/VodModel.h>


@interface VodSubmitQualityDetectionJobRequest:JDCloudRequest

/// 媒资ID
@property (strong,nonatomic,nonnull)  NSString*  mediaId;
/// 质检模板ID列表
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  templateIds;
-(id) initWithRegion:(NSString *)regionId
mediaId:(NSString*)mediaId
templateIds:(NSArray<NSNumber*>*)templateIds;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
mediaId:(NSString*)mediaId
templateIds:(NSArray<NSNumber*>*)templateIds;

@end

@interface VodSetDefaultDomainRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodListHeadersRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodGetDomainRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodGetHttpSslResult : NSObject
/// 证书来源。取值范围：default
 @property (strong,nonatomic,nonnull)  NSString*  source;
/// 证书标题
 @property (strong,nonatomic,nonnull)  NSString*  title;
/// 证书内容
 @property (strong,nonatomic,nonnull)  NSString*  sslCert;
/// 证书私钥
 @property (strong,nonatomic,nonnull)  NSString*  sslKey;
/// 跳转类型。取值范围：
   /// default - 采用回源域名的默认协议
   /// http - 强制采用http协议回源
   /// https - 强制采用https协议回源
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  jumpType;
/// SSL配置启用状态
 @property (strong,nonatomic,nonnull)  NSNumber*  enabled;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSource:(NSString*) source

    title:(NSString*)title

    sslCert:(NSString*)sslCert

    sslKey:(NSString*)sslKey

    jumpType:(NSString*)jumpType

    enabled:(NSNumber*)enabled;
@end

@interface VodSetHttpSslRequest:JDCloudRequest

/// 证书来源。取值范围：default
@property (strong,nonatomic,nonnull)  NSString*  source;
/// 证书标题
@property (strong,nonatomic,nonnull)  NSString*  title;
/// 证书内容
@property (strong,nonatomic,nonnull)  NSString*  sslCert;
/// 证书私钥
@property (strong,nonatomic,nonnull)  NSString*  sslKey;
/// 跳转类型。取值范围：
   /// default - 采用回源域名的默认协议
   /// http - 强制采用http协议回源
   /// https - 强制采用https协议回源
   /// 
@property (strong,nonatomic,nonnull)  NSString*  jumpType;
/// SSL配置启用状态
@property (strong,nonatomic,nonnull)  NSNumber*  enabled;
/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
source:(NSString*)source
title:(NSString*)title
sslCert:(NSString*)sslCert
sslKey:(NSString*)sslKey
jumpType:(NSString*)jumpType
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
source:(NSString*)source
title:(NSString*)title
sslCert:(NSString*)sslCert
sslKey:(NSString*)sslKey
jumpType:(NSString*)jumpType
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

@end

@interface VodDeleteHeaderRequest:JDCloudRequest

/// 头参数名。当前支持的访问头参数取值范围：
   ///   Content-Disposition
   ///   Content-Language
   ///   Expires
   ///   Access-Control-Allow-Origin
   ///   Access-Control-Allow-Methods
   ///   Access-Control-Max-Age
   ///   Access-Control-Expose-Headers
   /// 
@property (strong,nonatomic,nonnull)  NSString*  headerName;
/// 头参数类型，取值范围：req、resp
@property (strong,nonatomic,nonnull)  NSString*  headerType;
/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
headerName:(NSString*)headerName
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
headerName:(NSString*)headerName
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId;

@end

@interface VodGetURLRuleRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodGetHttpSslRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodCreateDomainRequest:JDCloudRequest

/// 域名名称
@property (strong,nonatomic,nonnull)  NSString*  name;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name;

@end

@interface VodDeleteDomainRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodGetIPRuleRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodDisableDomainRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodGetDomainResult : NSObject
/// 域名ID
 @property (strong,nonatomic,nonnull)  NSString*  idValue;
/// 域名名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 域名CNAME
 @property (strong,nonatomic,nonnull)  NSString*  cname;
/// 域名状态。取值范围：
   ///   init - 初始状态
   ///   configuring - 配置中
   ///   normal - 正常
   ///   stopped - 已停用
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  status;
/// 域名来源。取值范围：
   ///   system - 系统生成
   ///   custom - 用户自建
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  source;
/// 是否默认域名
 @property (strong,nonatomic,nonnull)  NSNumber*  asDefault;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSString*) idValue

    name:(NSString*)name

    cname:(NSString*)cname

    status:(NSString*)status

    source:(NSString*)source

    asDefault:(NSNumber*)asDefault

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodCreateDomainResult : NSObject
/// 域名ID
 @property (strong,nonatomic,nonnull)  NSString*  idValue;
/// 域名名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 域名CNAME
 @property (strong,nonatomic,nonnull)  NSString*  cname;
/// 域名状态。取值范围：
   ///   init - 初始状态
   ///   configuring - 配置中
   ///   normal - 正常
   ///   stopped - 已停用
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  status;
/// 域名来源。取值范围：
   ///   system - 系统生成
   ///   custom - 用户自建
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  source;
/// 是否默认域名
 @property (strong,nonatomic,nonnull)  NSNumber*  asDefault;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSString*) idValue

    name:(NSString*)name

    cname:(NSString*)cname

    status:(NSString*)status

    source:(NSString*)source

    asDefault:(NSNumber*)asDefault

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodSetHeaderRequest:JDCloudRequest

/// 头参数名。当前支持的访问头参数取值范围：
   ///   Content-Disposition
   ///   Content-Language
   ///   Expires
   ///   Access-Control-Allow-Origin
   ///   Access-Control-Allow-Methods
   ///   Access-Control-Max-Age
   ///   Access-Control-Expose-Headers
   /// 
@property (strong,nonatomic,nonnull)  NSString*  headerName;
/// 头参数值
@property (strong,nonatomic,nonnull)  NSString*  headerValue;
/// 头参数类型，取值范围：req、resp
@property (strong,nonatomic,nonnull)  NSString*  headerType;
/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
headerName:(NSString*)headerName
headerValue:(NSString*)headerValue
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
headerName:(NSString*)headerName
headerValue:(NSString*)headerValue
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId;

@end

@interface VodGetRefererRuleRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodEnableDomainRequest:JDCloudRequest

/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId;

@end

@interface VodGetQualityDetectionTemplateResult : NSObject
/// 模板ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 模板类型，区分该模板的检测内容。目前只支持 video 。
 @property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 检测项列表。取值范围：
   ///   blackScreen - 黑场
   ///   pureColor - 纯色
   ///   colorCast - 偏色
   ///   frozenFrame - 静帧
   ///   brightness - 亮度
   ///   contrast - 对比度
   /// 
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  detections;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    templateType:(NSString*)templateType

    detections:(NSArray<NSString*>*)detections

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodCreateQualityDetectionTemplateRequest:JDCloudRequest

/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 模板类型，区分该模板的检测内容。目前只支持 video 。
@property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 检测项列表。取值范围：
   ///   blackScreen - 黑场
   ///   pureColor - 纯色
   ///   colorCast - 偏色
   ///   frozenFrame - 静帧
   ///   brightness - 亮度
   ///   contrast - 对比度
   /// 
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  detections;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
templateType:(NSString*)templateType
detections:(NSArray<NSString*>*)detections;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
templateType:(NSString*)templateType
detections:(NSArray<NSString*>*)detections;

@end

@interface VodCreateQualityDetectionTemplateResult : NSObject
/// 模板ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 模板类型，区分该模板的检测内容。目前只支持 video 。
 @property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 检测项列表。取值范围：
   ///   blackScreen - 黑场
   ///   pureColor - 纯色
   ///   colorCast - 偏色
   ///   frozenFrame - 静帧
   ///   brightness - 亮度
   ///   contrast - 对比度
   /// 
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  detections;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    templateType:(NSString*)templateType

    detections:(NSArray<NSString*>*)detections

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodUpdateQualityDetectionTemplateRequest:JDCloudRequest

/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 检测项列表。取值范围：
   ///   blackScreen - 黑场
   ///   pureColor - 纯色
   ///   colorCast - 偏色
   ///   frozenFrame - 静帧
   ///   brightness - 亮度
   ///   contrast - 对比度
   /// 
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  detections;
/// 模板ID
@property (strong,nonatomic,nonnull)  NSNumber*  templateId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
detections:(NSArray<NSString*>*)detections
templateId:(NSNumber*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
detections:(NSArray<NSString*>*)detections
templateId:(NSNumber*)templateId;

@end

@interface VodDeleteQualityDetectionTemplateRequest:JDCloudRequest

/// 模板ID
@property (strong,nonatomic,nonnull)  NSNumber*  templateId;
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId;

@end

@interface VodGetQualityDetectionTemplateRequest:JDCloudRequest

/// 模板ID
@property (strong,nonatomic,nonnull)  NSNumber*  templateId;
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId;

@end

@interface VodListQualityDetectionTemplatesRequest:JDCloudRequest

/// 页码；默认值为 1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认值为 10；取值范围 [10, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize;

@end

@interface VodUpdateQualityDetectionTemplateResult : NSObject
/// 模板ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 模板类型，区分该模板的检测内容。目前只支持 video 。
 @property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 检测项列表。取值范围：
   ///   blackScreen - 黑场
   ///   pureColor - 纯色
   ///   colorCast - 偏色
   ///   frozenFrame - 静帧
   ///   brightness - 亮度
   ///   contrast - 对比度
   /// 
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  detections;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    templateType:(NSString*)templateType

    detections:(NSArray<NSString*>*)detections

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodSubmitTranscodeJobRequest:JDCloudRequest

/// 视频ID
@property (strong,nonatomic,nonnull)  NSString*  videoId;
/// 转码模板ID列表
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  templateIds;
/// 水印ID列表
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  watermarkIds;
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId
templateIds:(NSArray<NSNumber*>*)templateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId
templateIds:(NSArray<NSNumber*>*)templateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds;

@end

@interface VodGetTranscodeTemplateRequest:JDCloudRequest

/// 模板ID
@property (strong,nonatomic,nonnull)  NSNumber*  templateId;
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId;

@end

@interface VodDeleteTranscodeTemplateRequest:JDCloudRequest

/// 模板ID
@property (strong,nonatomic,nonnull)  NSNumber*  templateId;
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId;

@end

@interface VodUpdateCategoryResult : NSObject
/// 分类ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 分类名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 分类级别。取值范围为 [0, 3]，取值为 0 时为虚拟根节点
   /// 
 @property (strong,nonatomic,nonnull)  NSNumber*  level;
/// 父分类ID，取值为 0 或 null 时，表示该分类为一级分类
   /// 
 @property (strong,nonatomic,nonnull)  NSNumber*  parentId;
/// 分类描述信息
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    level:(NSNumber*)level

    parentId:(NSNumber*)parentId

    descriptionValue:(NSString*)descriptionValue

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodUpdateCategoryRequest:JDCloudRequest

/// 分类名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 父分类ID，取值为 0 或 null 时，表示该分类为一级分类
   /// 
@property (strong,nonatomic,nonnull)  NSNumber*  parentId;
/// 分类描述信息
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 分类ID
@property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId;

@end

@interface VodGetCategoryRequest:JDCloudRequest

/// 分类ID
@property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
-(id) initWithRegion:(NSString *)regionId
categoryId:(NSNumber*)categoryId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
categoryId:(NSNumber*)categoryId;

@end

@interface VodCreateCategoryResult : NSObject
/// 分类ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 分类名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 分类级别。取值范围为 [0, 3]，取值为 0 时为虚拟根节点
   /// 
 @property (strong,nonatomic,nonnull)  NSNumber*  level;
/// 父分类ID，取值为 0 或 null 时，表示该分类为一级分类
   /// 
 @property (strong,nonatomic,nonnull)  NSNumber*  parentId;
/// 分类描述信息
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    level:(NSNumber*)level

    parentId:(NSNumber*)parentId

    descriptionValue:(NSString*)descriptionValue

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodGetCategoryWithChildrenRequest:JDCloudRequest

/// 分类ID
@property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
-(id) initWithRegion:(NSString *)regionId
categoryId:(NSNumber*)categoryId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
categoryId:(NSNumber*)categoryId;

@end

@interface VodCreateCategoryRequest:JDCloudRequest

/// 分类名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 父分类ID，取值为 0 或 null 时，表示该分类为一级分类
   /// 
@property (strong,nonatomic,nonnull)  NSNumber*  parentId;
/// 分类描述信息
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue;

@end

@interface VodGetCategoryResult : NSObject
/// 分类ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 分类名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 分类级别。取值范围为 [0, 3]，取值为 0 时为虚拟根节点
   /// 
 @property (strong,nonatomic,nonnull)  NSNumber*  level;
/// 父分类ID，取值为 0 或 null 时，表示该分类为一级分类
   /// 
 @property (strong,nonatomic,nonnull)  NSNumber*  parentId;
/// 分类描述信息
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    level:(NSNumber*)level

    parentId:(NSNumber*)parentId

    descriptionValue:(NSString*)descriptionValue

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodDeleteCategoryRequest:JDCloudRequest

/// 分类ID
@property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
-(id) initWithRegion:(NSString *)regionId
categoryId:(NSNumber*)categoryId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
categoryId:(NSNumber*)categoryId;

@end

@interface VodDeleteVideoStreamsRequest:JDCloudRequest

/// TaskIds
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  taskIds;
/// 视频ID
@property (strong,nonatomic,nonnull)  NSString*  videoId;
-(id) initWithRegion:(NSString *)regionId
taskIds:(NSArray<NSNumber*>*)taskIds
videoId:(NSString*)videoId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
taskIds:(NSArray<NSNumber*>*)taskIds
videoId:(NSString*)videoId;

@end

@interface VodDeleteVideoRequest:JDCloudRequest

/// 视频ID
@property (strong,nonatomic,nonnull)  NSString*  videoId;
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId;

@end

@interface VodBatchDeleteVideosResult : NSObject
/// 删除成功的视频ID集合
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  okVideoIds;
/// 未找到的视频ID集合
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  notFoundVideoIds;
/// 删除失败的视频ID集合
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  failedVideoIds;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds

    notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds

    failedVideoIds:(NSArray<NSString*>*)failedVideoIds;
@end

@interface VodBatchDeleteVideosRequest:JDCloudRequest

/// 视频ID集合
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  videoIds;
-(id) initWithRegion:(NSString *)regionId
videoIds:(NSArray<NSString*>*)videoIds;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoIds:(NSArray<NSString*>*)videoIds;

@end

@interface VodUpdateVideoRequest:JDCloudRequest

/// 视频名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 分类ID
@property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
/// 标签
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  tags;
/// 封面地址
@property (strong,nonatomic,nonnull)  NSString*  coverUrl;
/// 视频描述信息
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 视频ID
@property (strong,nonatomic,nonnull)  NSString*  videoId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
videoId:(NSString*)videoId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
videoId:(NSString*)videoId;

@end

@interface VodDeleteVideoStreamsResult : NSObject
/// 删除成功的转码任务ID列表
 @property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  okTaskIds;
/// 未找到的转码任务ID列表
 @property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  notFoundTaskIds;
/// 删除失败的转码任务ID列表
 @property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  failedTaskIds;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithOkTaskIds:(NSArray<NSNumber*>*) okTaskIds

    notFoundTaskIds:(NSArray<NSNumber*>*)notFoundTaskIds

    failedTaskIds:(NSArray<NSNumber*>*)failedTaskIds;
@end

@interface VodGetVideoRequest:JDCloudRequest

/// 视频ID
@property (strong,nonatomic,nonnull)  NSString*  videoId;
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId;

@end

@interface VodGetVideoPlayInfoRequest:JDCloudRequest

/// 视频ID
@property (strong,nonatomic,nonnull)  NSString*  videoId;
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId;

@end

@interface VodBatchUpdateVideosResult : NSObject
/// 更新成功的视频ID列表
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  okVideoIds;
/// 未找到的视频ID列表
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  notFoundVideoIds;
/// 更新失败的视频ID列表
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  failedVideoIds;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds

    notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds

    failedVideoIds:(NSArray<NSString*>*)failedVideoIds;
@end

@interface VodCreateWatermarkResult : NSObject
/// 水印ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 水印名称。只支持中英文、数字。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 图片地址
 @property (strong,nonatomic,nonnull)  NSString*  imgUrl;
/// 水印宽度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  width;
/// 水印高度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  height;
/// 尺寸单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  sizeUnit;
/// 水印位置。取值范围：
   ///   LT - 左上
   ///   RT - 右上
   ///   LB - 左下
   ///   RB - 右下
 @property (strong,nonatomic,nonnull)  NSString*  position;
/// 水平偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetX;
/// 竖直偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetY;
/// 偏移单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetUnit;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    imgUrl:(NSString*)imgUrl

    width:(NSString*)width

    height:(NSString*)height

    sizeUnit:(NSString*)sizeUnit

    position:(NSString*)position

    offsetX:(NSString*)offsetX

    offsetY:(NSString*)offsetY

    offsetUnit:(NSString*)offsetUnit

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodUpdateWatermarkResult : NSObject
/// 水印ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 水印名称。只支持中英文、数字。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 图片地址
 @property (strong,nonatomic,nonnull)  NSString*  imgUrl;
/// 水印宽度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  width;
/// 水印高度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  height;
/// 尺寸单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  sizeUnit;
/// 水印位置。取值范围：
   ///   LT - 左上
   ///   RT - 右上
   ///   LB - 左下
   ///   RB - 右下
 @property (strong,nonatomic,nonnull)  NSString*  position;
/// 水平偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetX;
/// 竖直偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetY;
/// 偏移单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetUnit;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    imgUrl:(NSString*)imgUrl

    width:(NSString*)width

    height:(NSString*)height

    sizeUnit:(NSString*)sizeUnit

    position:(NSString*)position

    offsetX:(NSString*)offsetX

    offsetY:(NSString*)offsetY

    offsetUnit:(NSString*)offsetUnit

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodGetWatermarkResult : NSObject
/// 水印ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 水印名称。只支持中英文、数字。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 图片地址
 @property (strong,nonatomic,nonnull)  NSString*  imgUrl;
/// 水印宽度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  width;
/// 水印高度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  height;
/// 尺寸单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  sizeUnit;
/// 水印位置。取值范围：
   ///   LT - 左上
   ///   RT - 右上
   ///   LB - 左下
   ///   RB - 右下
 @property (strong,nonatomic,nonnull)  NSString*  position;
/// 水平偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetX;
/// 竖直偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetY;
/// 偏移单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  offsetUnit;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    imgUrl:(NSString*)imgUrl

    width:(NSString*)width

    height:(NSString*)height

    sizeUnit:(NSString*)sizeUnit

    position:(NSString*)position

    offsetX:(NSString*)offsetX

    offsetY:(NSString*)offsetY

    offsetUnit:(NSString*)offsetUnit

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodGetWatermarkRequest:JDCloudRequest

/// 水印ID
@property (strong,nonatomic,nonnull)  NSNumber*  watermarkId;
-(id) initWithRegion:(NSString *)regionId
watermarkId:(NSNumber*)watermarkId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
watermarkId:(NSNumber*)watermarkId;

@end

@interface VodListWatermarksRequest:JDCloudRequest

/// 页码；默认值为 1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认值为 10；取值范围 [10, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize;

@end

@interface VodUpdateWatermarkRequest:JDCloudRequest

/// 水印名称。只支持中英文、数字。长度不超过128个字符。UTF-8编码。
   /// 
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 图片地址
@property (strong,nonatomic,nonnull)  NSString*  imgUrl;
/// 水印宽度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  width;
/// 水印高度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  height;
/// 尺寸单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
@property (strong,nonatomic,nonnull)  NSString*  sizeUnit;
/// 水印位置。取值范围：
   ///   LT - 左上
   ///   RT - 右上
   ///   LB - 左下
   ///   RB - 右下
   /// 
@property (strong,nonatomic,nonnull)  NSString*  position;
/// 水平偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  offsetX;
/// 竖直偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  offsetY;
/// 偏移单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
@property (strong,nonatomic,nonnull)  NSString*  offsetUnit;
/// 水印ID
@property (strong,nonatomic,nonnull)  NSNumber*  watermarkId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit
watermarkId:(NSNumber*)watermarkId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit
watermarkId:(NSNumber*)watermarkId;

@end

@interface VodDeleteWatermarkRequest:JDCloudRequest

/// 水印ID
@property (strong,nonatomic,nonnull)  NSNumber*  watermarkId;
-(id) initWithRegion:(NSString *)regionId
watermarkId:(NSNumber*)watermarkId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
watermarkId:(NSNumber*)watermarkId;

@end

@interface VodCreateWatermarkRequest:JDCloudRequest

/// 水印名称。只支持中英文、数字。长度不超过128个字符。UTF-8编码。
   /// 
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 图片地址
@property (strong,nonatomic,nonnull)  NSString*  imgUrl;
/// 水印宽度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  width;
/// 水印高度。
   /// 当 sizeUnit &#x3D; pixel 时，取值范围为 [8, 4096] 整数
   /// 当 sizeUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  height;
/// 尺寸单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
@property (strong,nonatomic,nonnull)  NSString*  sizeUnit;
/// 水印位置。取值范围：
   ///   LT - 左上
   ///   RT - 右上
   ///   LB - 左下
   ///   RB - 右下
   /// 
@property (strong,nonatomic,nonnull)  NSString*  position;
/// 水平偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  offsetX;
/// 竖直偏移。
   /// 当 offsetUnit &#x3D; pixel 时，取值范围为 [8, 4088] 整数
   /// 当 offsetUnit &#x3D; percent 时，取值范围为 [0, 100] 小数
   /// 
@property (strong,nonatomic,nonnull)  NSString*  offsetY;
/// 偏移单位。取值范围：
   ///   pixel - 像素
   ///   percent - 百分比
   /// 默认值为 pixel
   /// 
@property (strong,nonatomic,nonnull)  NSString*  offsetUnit;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit;

@end

@interface VodCreateImageUploadTaskRequest:JDCloudRequest

/// HTTP 请求方法，取值范围：GET、POST、PUT、DELETE、HEAD、PATCH，默认值为 PUT
@property (strong,nonatomic,nonnull)  NSString*  httpMethod;
/// 文件名称
@property (strong,nonatomic,nonnull)  NSString*  fileName;
/// 文件大小
@property (strong,nonatomic,nonnull)  NSNumber*  fileSize;
-(id) initWithRegion:(NSString *)regionId
httpMethod:(NSString*)httpMethod
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
httpMethod:(NSString*)httpMethod
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize;

@end

@interface VodRefreshVideoUploadTaskResult : NSObject
/// 视频ID
 @property (strong,nonatomic,nonnull)  NSString*  videoId;
/// 视频上传地址
 @property (strong,nonatomic,nonnull)  NSString*  uploadUrl;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithVideoId:(NSString*) videoId

    uploadUrl:(NSString*)uploadUrl;
@end

@interface VodCreateImageUploadTaskResult : NSObject
/// 图片ID
 @property (strong,nonatomic,nonnull)  NSString*  imageId;
/// 图片上传地址
 @property (strong,nonatomic,nonnull)  NSString*  uploadUrl;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithImageId:(NSString*) imageId

    uploadUrl:(NSString*)uploadUrl;
@end

@interface VodRefreshVideoUploadTaskRequest:JDCloudRequest

/// 视频地址
@property (strong,nonatomic,nonnull)  NSString*  videoId;
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId;

@end

@interface VodCreateVideoUploadTaskResult : NSObject
/// 视频ID
 @property (strong,nonatomic,nonnull)  NSString*  videoId;
/// 视频上传地址
 @property (strong,nonatomic,nonnull)  NSString*  uploadUrl;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithVideoId:(NSString*) videoId

    uploadUrl:(NSString*)uploadUrl;
@end

@interface VodCreateVideoUploadTaskRequest:JDCloudRequest

/// HTTP 请求方法，取值范围：GET、POST、PUT、DELETE、HEAD、PATCH，默认值为 PUT
@property (strong,nonatomic,nonnull)  NSString*  httpMethod;
/// 视频标题
@property (strong,nonatomic,nonnull)  NSString*  title;
/// 文件名称
@property (strong,nonatomic,nonnull)  NSString*  fileName;
/// 文件大小
@property (strong,nonatomic,nonnull)  NSNumber*  fileSize;
/// 封面地址
@property (strong,nonatomic,nonnull)  NSString*  coverUrl;
/// 视频描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 分类ID
@property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
/// 视频标签集合
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  tags;
/// 转码模板ID集合
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  transcodeTemplateIds;
/// 水印ID集合
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  watermarkIds;
-(id) initWithRegion:(NSString *)regionId
httpMethod:(NSString*)httpMethod
title:(NSString*)title
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
transcodeTemplateIds:(NSArray<NSNumber*>*)transcodeTemplateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
httpMethod:(NSString*)httpMethod
title:(NSString*)title
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
transcodeTemplateIds:(NSArray<NSNumber*>*)transcodeTemplateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds;

@end

@interface VodBatchSubmitQualityDetectionJobsResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodBatchSubmitQualityDetectionJobsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodBatchSubmitQualityDetectionJobsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodBatchSubmitQualityDetectionJobsResult*) result;
@end

@interface VodBatchSubmitQualityDetectionJobsRequest:JDCloudRequest

/// BulkItems
@property (strong,nonatomic,nonnull)  NSArray<SubmitQualityDetectionJobRequestObject*>*  bulkItems;
-(id) initWithRegion:(NSString *)regionId
bulkItems:(NSArray<SubmitQualityDetectionJobRequestObject*>*)bulkItems;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
bulkItems:(NSArray<SubmitQualityDetectionJobRequestObject*>*)bulkItems;

@end

@interface VodSubmitQualityDetectionJobResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodSubmitQualityDetectionJobResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSubmitQualityDetectionJobResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSubmitQualityDetectionJobResult*) result;
@end

@interface VodSetURLRuleRequest:JDCloudRequest

/// URL鉴权规则配置对象
@property (strong,nonatomic,nonnull)  URLRuleConfigObject*  config;
/// 是否启用该规则
@property (strong,nonatomic,nonnull)  NSNumber*  enabled;
/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
config:(URLRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
config:(URLRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

@end

@interface VodGetIPRuleResult : NSObject
/// 规则类型，取值 &#39;ip&#39;
 @property (strong,nonatomic,nonnull)  NSString*  ruleType;
/// IP黑名单规则配置对象
 @property (strong,nonatomic,nonnull)  IPRuleConfigObject*  config;
/// 是否启用该规则
 @property (strong,nonatomic,nonnull)  NSNumber*  enabled;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRuleType:(NSString*) ruleType

    config:(IPRuleConfigObject*)config

    enabled:(NSNumber*)enabled;
@end

@interface VodDisableDomainResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodGetRefererRuleResult : NSObject
/// 规则类型，取值 &#39;referer&#39;
 @property (strong,nonatomic,nonnull)  NSString*  ruleType;
/// Referer防盗链规则配置对象
 @property (strong,nonatomic,nonnull)  RefererRuleConfigObject*  config;
/// 是否启用该规则
 @property (strong,nonatomic,nonnull)  NSNumber*  enabled;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRuleType:(NSString*) ruleType

    config:(RefererRuleConfigObject*)config

    enabled:(NSNumber*)enabled;
@end

@interface VodSetDefaultDomainResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodSetDefaultDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSetDefaultDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSetDefaultDomainResult*) result;
@end

@interface VodListHeadersResult : NSObject
/// 头参数列表
 @property (strong,nonatomic,nonnull)  NSArray<GetHeaderResultObject*>*  headers;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithHeaders:(NSArray<GetHeaderResultObject*>*) headers;
@end

@interface VodListHeadersResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListHeadersResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListHeadersResult*) result;
@end

@interface VodSetRefererRuleRequest:JDCloudRequest

/// Referer防盗链规则配置对象
@property (strong,nonatomic,nonnull)  RefererRuleConfigObject*  config;
/// 是否启用该规则
@property (strong,nonatomic,nonnull)  NSNumber*  enabled;
/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
config:(RefererRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
config:(RefererRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

@end

@interface VodListDomainsRequest:JDCloudRequest

/// 页码；默认值为 1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认值为 10；取值范围 [10, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// Sorts
@property (strong,nonatomic,nonnull)  NSArray<VodSort*>*  sorts;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts;

@end

@interface VodSetURLRuleResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodSetURLRuleResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSetURLRuleResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSetURLRuleResult*) result;
@end

@interface VodCreateDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateDomainResult*) result;
@end

@interface VodSetRefererRuleResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodSetRefererRuleResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSetRefererRuleResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSetRefererRuleResult*) result;
@end

@interface VodDeleteHeaderResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodListDomainsResult : NSObject
/// 当前页码
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 每页数量
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalElements;
/// 总页数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPages;
/// 分页内容
 @property (strong,nonatomic,nonnull)  NSArray<DomainObject*>*  content;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPageNumber:(NSNumber*) pageNumber

    pageSize:(NSNumber*)pageSize

    totalElements:(NSNumber*)totalElements

    totalPages:(NSNumber*)totalPages

    content:(NSArray<DomainObject*>*)content;
@end

@interface VodSetIPRuleResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodSetIPRuleResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSetIPRuleResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSetIPRuleResult*) result;
@end

@interface VodEnableDomainResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodGetURLRuleResult : NSObject
/// 规则类型，取值 &#39;url&#39;
 @property (strong,nonatomic,nonnull)  NSString*  ruleType;
/// URL鉴权规则配置对象
 @property (strong,nonatomic,nonnull)  URLRuleConfigObject*  config;
/// 是否启用该规则
 @property (strong,nonatomic,nonnull)  NSNumber*  enabled;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRuleType:(NSString*) ruleType

    config:(URLRuleConfigObject*)config

    enabled:(NSNumber*)enabled;
@end

@interface VodDeleteDomainResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodDeleteDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteDomainResult*) result;
@end

@interface VodEnableDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodEnableDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodEnableDomainResult*) result;
@end

@interface VodDisableDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDisableDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDisableDomainResult*) result;
@end

@interface VodSetHttpSslResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodSetHttpSslResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSetHttpSslResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSetHttpSslResult*) result;
@end

@interface VodGetDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetDomainResult*) result;
@end

@interface VodDeleteHeaderResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteHeaderResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteHeaderResult*) result;
@end

@interface VodGetURLRuleResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetURLRuleResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetURLRuleResult*) result;
@end

@interface VodGetHttpSslResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetHttpSslResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetHttpSslResult*) result;
@end

@interface VodSetIPRuleRequest:JDCloudRequest

/// IP黑名单规则配置对象
@property (strong,nonatomic,nonnull)  IPRuleConfigObject*  config;
/// 是否启用该规则
@property (strong,nonatomic,nonnull)  NSNumber*  enabled;
/// 域名ID
@property (strong,nonatomic,nonnull)  NSNumber*  domainId;
-(id) initWithRegion:(NSString *)regionId
config:(IPRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
config:(IPRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId;

@end

@interface VodListDomainsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListDomainsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListDomainsResult*) result;
@end

@interface VodSetHeaderResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodGetRefererRuleResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetRefererRuleResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetRefererRuleResult*) result;
@end

@interface VodSetHeaderResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSetHeaderResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSetHeaderResult*) result;
@end

@interface VodGetIPRuleResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetIPRuleResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetIPRuleResult*) result;
@end

@interface VodListQualityDetectionTemplatesResult : NSObject
/// 当前页码
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 每页数量
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalElements;
/// 总页数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPages;
/// 分页内容
 @property (strong,nonatomic,nonnull)  NSArray<QualityDetectionTemplateObject*>*  content;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPageNumber:(NSNumber*) pageNumber

    pageSize:(NSNumber*)pageSize

    totalElements:(NSNumber*)totalElements

    totalPages:(NSNumber*)totalPages

    content:(NSArray<QualityDetectionTemplateObject*>*)content;
@end

@interface VodListQualityDetectionTemplatesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListQualityDetectionTemplatesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListQualityDetectionTemplatesResult*) result;
@end

@interface VodDeleteQualityDetectionTemplateResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodGetQualityDetectionTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetQualityDetectionTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetQualityDetectionTemplateResult*) result;
@end

@interface VodDeleteQualityDetectionTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteQualityDetectionTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteQualityDetectionTemplateResult*) result;
@end

@interface VodUpdateQualityDetectionTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodUpdateQualityDetectionTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodUpdateQualityDetectionTemplateResult*) result;
@end

@interface VodCreateQualityDetectionTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateQualityDetectionTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateQualityDetectionTemplateResult*) result;
@end

@interface VodBatchSubmitTranscodeJobsResult : NSObject
/// Tasks
 @property (strong,nonatomic,nonnull)  NSArray<SubmittedTranscodeTask*>*  tasks;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithTasks:(NSArray<SubmittedTranscodeTask*>*) tasks;
@end

@interface VodBatchSubmitTranscodeJobsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodBatchSubmitTranscodeJobsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodBatchSubmitTranscodeJobsResult*) result;
@end

@interface VodSubmitTranscodeJobResult : NSObject
/// 已提交的转码任务
 @property (strong,nonatomic,nonnull)  NSArray<SubmittedTranscodeTask*>*  tasks;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithTasks:(NSArray<SubmittedTranscodeTask*>*) tasks;
@end

@interface VodSubmitTranscodeJobResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodSubmitTranscodeJobResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodSubmitTranscodeJobResult*) result;
@end

@interface VodBatchSubmitTranscodeJobsRequest:JDCloudRequest

/// BulkItems
@property (strong,nonatomic,nonnull)  NSArray<SubmitTranscodeJobRequestObject*>*  bulkItems;
-(id) initWithRegion:(NSString *)regionId
bulkItems:(NSArray<SubmitTranscodeJobRequestObject*>*)bulkItems;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
bulkItems:(NSArray<SubmitTranscodeJobRequestObject*>*)bulkItems;

@end

@interface VodCreateTranscodeTemplateRequest:JDCloudRequest

/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频参数配置
@property (strong,nonatomic,nonnull)  Video*  video;
/// 音频参数配置
@property (strong,nonatomic,nonnull)  Audio*  audio;
/// 封装配置
@property (strong,nonatomic,nonnull)  Encapsulation*  encapsulation;
/// 清晰度规格标记。取值范围：
   ///   SD - 标清
   ///   HD - 高清
   ///   FHD - 超清
   ///   2K
   ///   4K
   /// 
@property (strong,nonatomic,nonnull)  NSString*  definition;
/// 模板类型。取值范围：
   ///   jdchd - 京享超清
   ///   jdchs - 极速转码
   /// 
@property (strong,nonatomic,nonnull)  NSString*  templateType;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType;

@end

@interface VodUpdateTranscodeTemplateRequest:JDCloudRequest

/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
@property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频参数配置
@property (strong,nonatomic,nonnull)  Video*  video;
/// 音频参数配置
@property (strong,nonatomic,nonnull)  Audio*  audio;
/// 封装配置
@property (strong,nonatomic,nonnull)  Encapsulation*  encapsulation;
/// 清晰度规格标记。取值范围：
   ///   SD - 标清
   ///   HD - 高清
   ///   FHD - 超清
   ///   2K
   ///   4K
   /// 
@property (strong,nonatomic,nonnull)  NSString*  definition;
/// 模板类型。取值范围：
   ///   jdchd - 京享超清
   ///   jdchs - 极速转码
   /// 
@property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 模板ID
@property (strong,nonatomic,nonnull)  NSNumber*  templateId;
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType
templateId:(NSNumber*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType
templateId:(NSNumber*)templateId;

@end

@interface VodCreateTranscodeTemplateResult : NSObject
/// 模板ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频参数配置
 @property (strong,nonatomic,nonnull)  Video*  video;
/// 音频参数配置
 @property (strong,nonatomic,nonnull)  Audio*  audio;
/// 封装配置
 @property (strong,nonatomic,nonnull)  Encapsulation*  encapsulation;
/// 清晰度规格标记。取值范围：
   ///   SD - 标清
   ///   HD - 高清
   ///   FHD - 超清
   ///   2K
   ///   4K
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  definition;
/// 模板来源。取值范围：
   ///   system - 系统预置
   ///   custom - 用户自建
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  source;
/// 模板类型。取值范围：
   ///   jdchd - 京享超清
   ///   jdchs - 极速转码
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    video:(Video*)video

    audio:(Audio*)audio

    encapsulation:(Encapsulation*)encapsulation

    definition:(NSString*)definition

    source:(NSString*)source

    templateType:(NSString*)templateType

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodCreateTranscodeTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateTranscodeTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateTranscodeTemplateResult*) result;
@end

@interface VodUpdateTranscodeTemplateResult : NSObject
/// 模板ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频参数配置
 @property (strong,nonatomic,nonnull)  Video*  video;
/// 音频参数配置
 @property (strong,nonatomic,nonnull)  Audio*  audio;
/// 封装配置
 @property (strong,nonatomic,nonnull)  Encapsulation*  encapsulation;
/// 清晰度规格标记。取值范围：
   ///   SD - 标清
   ///   HD - 高清
   ///   FHD - 超清
   ///   2K
   ///   4K
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  definition;
/// 模板来源。取值范围：
   ///   system - 系统预置
   ///   custom - 用户自建
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  source;
/// 模板类型。取值范围：
   ///   jdchd - 京享超清
   ///   jdchs - 极速转码
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    video:(Video*)video

    audio:(Audio*)audio

    encapsulation:(Encapsulation*)encapsulation

    definition:(NSString*)definition

    source:(NSString*)source

    templateType:(NSString*)templateType

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodDeleteTranscodeTemplateResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodDeleteTranscodeTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteTranscodeTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteTranscodeTemplateResult*) result;
@end

@interface VodUpdateTranscodeTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodUpdateTranscodeTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodUpdateTranscodeTemplateResult*) result;
@end

@interface VodListTranscodeTemplatesResult : NSObject
/// 当前页码
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 每页数量
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalElements;
/// 总页数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPages;
/// 分页内容
 @property (strong,nonatomic,nonnull)  NSArray<TranscodeTemplateObject*>*  content;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPageNumber:(NSNumber*) pageNumber

    pageSize:(NSNumber*)pageSize

    totalElements:(NSNumber*)totalElements

    totalPages:(NSNumber*)totalPages

    content:(NSArray<TranscodeTemplateObject*>*)content;
@end

@interface VodListTranscodeTemplatesRequest:JDCloudRequest

/// 页码；默认值为 1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认值为 10；取值范围 [10, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// Filters
@property (strong,nonatomic,nonnull)  NSArray<VodFilter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters;

@end

@interface VodListTranscodeTemplatesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListTranscodeTemplatesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListTranscodeTemplatesResult*) result;
@end

@interface VodGetTranscodeTemplateResult : NSObject
/// 模板ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 模板名称。长度不超过128个字符。UTF-8编码。
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频参数配置
 @property (strong,nonatomic,nonnull)  Video*  video;
/// 音频参数配置
 @property (strong,nonatomic,nonnull)  Audio*  audio;
/// 封装配置
 @property (strong,nonatomic,nonnull)  Encapsulation*  encapsulation;
/// 清晰度规格标记。取值范围：
   ///   SD - 标清
   ///   HD - 高清
   ///   FHD - 超清
   ///   2K
   ///   4K
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  definition;
/// 模板来源。取值范围：
   ///   system - 系统预置
   ///   custom - 用户自建
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  source;
/// 模板类型。取值范围：
   ///   jdchd - 京享超清
   ///   jdchs - 极速转码
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  templateType;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    video:(Video*)video

    audio:(Audio*)audio

    encapsulation:(Encapsulation*)encapsulation

    definition:(NSString*)definition

    source:(NSString*)source

    templateType:(NSString*)templateType

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodGetTranscodeTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetTranscodeTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetTranscodeTemplateResult*) result;
@end

@interface VodGetCategoryWithChildrenResult : NSObject
/// 分类ID
 @property (strong,nonatomic,nonnull)  NSNumber*  idValue;
/// 分类名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 分类级别
 @property (strong,nonatomic,nonnull)  NSNumber*  level;
/// 分类描述
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 下级分类
 @property (strong,nonatomic,nonnull)  NSArray<SubCategory*>*  children;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSNumber*) idValue

    name:(NSString*)name

    level:(NSNumber*)level

    descriptionValue:(NSString*)descriptionValue

    children:(NSArray<SubCategory*>*)children

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodDeleteCategoryResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodListCategoriesResult : NSObject
/// 当前页码
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 每页数量
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalElements;
/// 总页数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPages;
/// 分页内容
 @property (strong,nonatomic,nonnull)  NSArray<CategoryObject*>*  content;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPageNumber:(NSNumber*) pageNumber

    pageSize:(NSNumber*)pageSize

    totalElements:(NSNumber*)totalElements

    totalPages:(NSNumber*)totalPages

    content:(NSArray<CategoryObject*>*)content;
@end

@interface VodListCategoriesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListCategoriesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListCategoriesResult*) result;
@end

@interface VodListCategoriesRequest:JDCloudRequest

/// 页码；默认值为 1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认值为 10；取值范围 [10, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// Sorts
@property (strong,nonatomic,nonnull)  NSArray<VodSort*>*  sorts;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts;

@end

@interface VodUpdateCategoryResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodUpdateCategoryResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodUpdateCategoryResult*) result;
@end

@interface VodGetCategoryWithChildrenResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetCategoryWithChildrenResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetCategoryWithChildrenResult*) result;
@end

@interface VodGetCategoryResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetCategoryResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetCategoryResult*) result;
@end

@interface VodDeleteCategoryResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteCategoryResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteCategoryResult*) result;
@end

@interface VodCreateCategoryResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateCategoryResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateCategoryResult*) result;
@end

@interface VodGetVideoResult : NSObject
/// 视频ID
 @property (strong,nonatomic,nonnull)  NSString*  idValue;
/// 视频名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频描述
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 封面图地址
 @property (strong,nonatomic,nonnull)  NSString*  coverUrl;
/// 视频状态。取值范围：
   ///   transcoding - 转码中
   ///   transcode_failed - 转码失败
   ///   normal - 正常
   ///   uploaded - 上传完成（未转码）
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  status;
/// 文件大小，单位为 Byte
 @property (strong,nonatomic,nonnull)  NSNumber*  fileSize;
/// 文件MD5校验和
 @property (strong,nonatomic,nonnull)  NSString*  checksum;
/// 视频时长
 @property (strong,nonatomic,nonnull)  NSNumber*  duration;
/// 标签集合
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  tags;
/// 分类ID
 @property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
/// 分类名称
 @property (strong,nonatomic,nonnull)  NSString*  categoryName;
/// 转码截图
 @property (strong,nonatomic,nonnull)  NSArray<Snapshot*>*  snapshots;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSString*) idValue

    name:(NSString*)name

    descriptionValue:(NSString*)descriptionValue

    coverUrl:(NSString*)coverUrl

    status:(NSString*)status

    fileSize:(NSNumber*)fileSize

    checksum:(NSString*)checksum

    duration:(NSNumber*)duration

    tags:(NSArray<NSString*>*)tags

    categoryId:(NSNumber*)categoryId

    categoryName:(NSString*)categoryName

    snapshots:(NSArray<Snapshot*>*)snapshots

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodListVideosResult : NSObject
/// 当前页码
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 每页数量
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalElements;
/// 总页数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPages;
/// 分页内容
 @property (strong,nonatomic,nonnull)  NSArray<VideoObject*>*  content;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPageNumber:(NSNumber*) pageNumber

    pageSize:(NSNumber*)pageSize

    totalElements:(NSNumber*)totalElements

    totalPages:(NSNumber*)totalPages

    content:(NSArray<VideoObject*>*)content;
@end

@interface VodListVideosResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListVideosResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListVideosResult*) result;
@end

@interface VodDeleteVideoResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodGetVideoResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetVideoResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetVideoResult*) result;
@end

@interface VodBatchUpdateVideosRequest:JDCloudRequest

/// 批量更新视频的条目集合
@property (strong,nonatomic,nonnull)  NSArray<BatchUpdateVideosBulkItem*>*  bulkItems;
-(id) initWithRegion:(NSString *)regionId
bulkItems:(NSArray<BatchUpdateVideosBulkItem*>*)bulkItems;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
bulkItems:(NSArray<BatchUpdateVideosBulkItem*>*)bulkItems;

@end

@interface VodDeleteVideoResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteVideoResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteVideoResult*) result;
@end

@interface VodGetVideoPlayInfoResult : NSObject
/// 视频基础信息
 @property (strong,nonatomic,nonnull)  VideoBaseInfo*  baseInfo;
/// 视频播放信息列表
 @property (strong,nonatomic,nonnull)  NSArray<VideoPlayInfo*>*  playInfoList;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBaseInfo:(VideoBaseInfo*) baseInfo

    playInfoList:(NSArray<VideoPlayInfo*>*)playInfoList;
@end

@interface VodGetVideoPlayInfoResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetVideoPlayInfoResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetVideoPlayInfoResult*) result;
@end

@interface VodUpdateVideoResult : NSObject
/// 视频ID
 @property (strong,nonatomic,nonnull)  NSString*  idValue;
/// 视频名称
 @property (strong,nonatomic,nonnull)  NSString*  name;
/// 视频描述
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 封面图地址
 @property (strong,nonatomic,nonnull)  NSString*  coverUrl;
/// 视频状态。取值范围：
   ///   transcoding - 转码中
   ///   transcode_failed - 转码失败
   ///   normal - 正常
   ///   uploaded - 上传完成（未转码）
   /// 
 @property (strong,nonatomic,nonnull)  NSString*  status;
/// 文件大小，单位为 Byte
 @property (strong,nonatomic,nonnull)  NSNumber*  fileSize;
/// 文件MD5校验和
 @property (strong,nonatomic,nonnull)  NSString*  checksum;
/// 视频时长
 @property (strong,nonatomic,nonnull)  NSNumber*  duration;
/// 标签集合
 @property (strong,nonatomic,nonnull)  NSArray<NSString*>*  tags;
/// 分类ID
 @property (strong,nonatomic,nonnull)  NSNumber*  categoryId;
/// 分类名称
 @property (strong,nonatomic,nonnull)  NSString*  categoryName;
/// 转码截图
 @property (strong,nonatomic,nonnull)  NSArray<Snapshot*>*  snapshots;
/// 创建时间
 @property (strong,nonatomic,nonnull)  NSString*  createTime;
/// 修改时间
 @property (strong,nonatomic,nonnull)  NSString*  updateTime;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithId:(NSString*) idValue

    name:(NSString*)name

    descriptionValue:(NSString*)descriptionValue

    coverUrl:(NSString*)coverUrl

    status:(NSString*)status

    fileSize:(NSNumber*)fileSize

    checksum:(NSString*)checksum

    duration:(NSNumber*)duration

    tags:(NSArray<NSString*>*)tags

    categoryId:(NSNumber*)categoryId

    categoryName:(NSString*)categoryName

    snapshots:(NSArray<Snapshot*>*)snapshots

    createTime:(NSString*)createTime

    updateTime:(NSString*)updateTime;
@end

@interface VodUpdateVideoResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodUpdateVideoResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodUpdateVideoResult*) result;
@end

@interface VodBatchDeleteVideosResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodBatchDeleteVideosResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodBatchDeleteVideosResult*) result;
@end

@interface VodDeleteVideoStreamsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteVideoStreamsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteVideoStreamsResult*) result;
@end

@interface VodListVideosRequest:JDCloudRequest

/// 页码；默认值为 1
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小；默认值为 10；取值范围 [10, 100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// Filters
@property (strong,nonatomic,nonnull)  NSArray<VodFilter*>*  filters;
/// Sorts
@property (strong,nonatomic,nonnull)  NSArray<VodSort*>*  sorts;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters
sorts:(NSArray<VodSort*>*)sorts;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters
sorts:(NSArray<VodSort*>*)sorts;

@end

@interface VodBatchUpdateVideosResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodBatchUpdateVideosResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodBatchUpdateVideosResult*) result;
@end

@interface VodDeleteWatermarkResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface VodGetWatermarkResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodGetWatermarkResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodGetWatermarkResult*) result;
@end

@interface VodDeleteWatermarkResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodDeleteWatermarkResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodDeleteWatermarkResult*) result;
@end

@interface VodListWatermarksResult : NSObject
/// 当前页码
 @property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 每页数量
 @property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 查询总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalElements;
/// 总页数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPages;
/// 分页内容
 @property (strong,nonatomic,nonnull)  NSArray<WatermarkObject*>*  content;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPageNumber:(NSNumber*) pageNumber

    pageSize:(NSNumber*)pageSize

    totalElements:(NSNumber*)totalElements

    totalPages:(NSNumber*)totalPages

    content:(NSArray<WatermarkObject*>*)content;
@end

@interface VodUpdateWatermarkResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodUpdateWatermarkResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodUpdateWatermarkResult*) result;
@end

@interface VodCreateWatermarkResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateWatermarkResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateWatermarkResult*) result;
@end

@interface VodListWatermarksResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodListWatermarksResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodListWatermarksResult*) result;
@end

@interface VodCreateImageUploadTaskResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateImageUploadTaskResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateImageUploadTaskResult*) result;
@end

@interface VodRefreshVideoUploadTaskResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodRefreshVideoUploadTaskResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodRefreshVideoUploadTaskResult*) result;
@end

@interface VodCreateVideoUploadTaskResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property VodCreateVideoUploadTaskResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(VodCreateVideoUploadTaskResult*) result;
@end

#endif /* VodApiModel_h */
